#include <ctime>
#include <iostream>
#include <fstream>

using namespace std;

void bubbleSort(int list[], int listLength) {
    while(listLength--)   {
            bool swapped = false;

    for(int i = 0; i < listLength; i++)  {
            if(list[i] > list[++i] ){
               swap(list[i], list[++i]);
               swapped = true;
            }
      }
          if(swapped == false) break;
    }
}
void read_from_file(const char *filename, int a[], int length) {
        ifstream file(filename);
        for(int i=0; i < length; i++)
        file >> a[i];
}
int main()

{
            #define LEN 5000
            int a[LEN];

            read_from_file("m1_sorted.txt",a,LEN);
            unsigned int t_start = clock();
            bubbleSort(a,LEN);
            unsigned int t_finish = clock();
             unsigned int t_work = t_finish - t_start;
             cout<<"m1_sorted " << t_work << " milliseconds \n";

             read_from_file("m2_reverse.txt",a,LEN);
             t_start = clock();
             bubbleSort(a,LEN);
             t_finish = clock();
             t_work = t_finish - t_start;
             cout<<"m2_reverse" << t_work << " milliseconds \n";


             read_from_file("m3_shuffle.txt",a,LEN);
             t_start = clock();
             bubbleSort(a,LEN);
             t_finish = clock();
             t_work = t_finish - t_start;
             cout<<"m3_shuffle" << t_work << " milliseconds \n";

   return 0;
}


